package com.sitech.ibnms.util.upload;

public interface RomoteController {

	public boolean isAuthorized();

	/**
	 * 执行命令
	 * 
	 * @param command
	 *            命令字符串
	 */
	public void doCommand(String command);

	/**
	 * 得到执行结果
	 * 
	 * @return
	 */
	public String getResult();

	/**
	 * 结果中含有某个字符串返回真
	 * 
	 * @param targetString
	 * @return
	 */
	public boolean getResultAsString(String targetString);

	/**
	 * 路径是否存在
	 * 
	 * @param dir
	 * @return
	 */
	public boolean isExistDir(String dir);

	/**
	 * 初始化
	 */
	public void initial();

	/**
	 * 关闭
	 */
	public void close();

	/**
	 * 根据关键字和用户判断进程是否存在
	 * 
	 * @param keywords
	 *            关键字
	 * @param username
	 *            用户名
	 * @return
	 */
	public boolean isRunning(String keywords, String username);
	
	public boolean isRunning(String keywords);

	/**
	 * 得到目标目录下的文件数-包括文件目录
	 * 
	 * @param dir
	 * @return
	 */
	public int childCountOfDir(String dir);

	/**
	 * 在远程主机主机上创建目录
	 * 
	 * @param dir
	 * @return
	 */
	public boolean createDir(String dir);

	public boolean isUsed(int port);
}
